package com.cloud.pole.recharge.service;

import java.util.Map;

import com.cloud.pole.recharge.model.BankRecvFeeOutRsp;
import com.cloud.pole.recharge.model.CancelTradeRsp;
import com.cloud.pole.recharge.model.CheckWholeNetTerminalRsp;
import com.cloud.pole.recharge.model.OrderWholeNetTradeProRsp;
import com.cloud.pole.recharge.model.PreOrderForOuterRsp;
import com.cloud.pole.recharge.model.ProductChangeOutRsp;
import com.cloud.pole.recharge.model.QryPayResultRsp;
import com.cloud.pole.recharge.model.QueryDiscntOutResp;
import com.cloud.pole.recharge.model.QueryOutNumInfoRsp;
import com.cloud.pole.recharge.model.QueryWholeNetContractDescRsp;
import com.cloud.pole.recharge.model.QueryWholeNetContractListRsp;
import com.cloud.pole.recharge.model.SelTempOccupyResOutRsp;
import com.cloud.pole.recharge.model.TriggerExtResp;
import com.cloud.pole.recharge.model.UnifiedPayDetailRsp;

public interface RechargeService {

	public TriggerExtResp triggerExt(String msisdn) throws Exception;
	
	public QueryDiscntOutResp queryDiscntOut(String serialNumber) throws Exception;
	
	public Boolean sendSmsVerifyCodeOut(String serialNumber, String tradeTypeCode) throws Exception;
	
	public Boolean checkSmsVerifyCodeOut(String serialNumber, String verifyCode, String tradeTypeCode) throws Exception;
	
	public ProductChangeOutRsp productChangeOut(String serialNumber, String discntCode, String productId, String smsCode) throws Exception;
	
	public BankRecvFeeOutRsp bankRecvFeeOut(Map<String, Object > map) throws Exception;
	
	public String buildSeq() throws Exception;
	
	public UnifiedPayDetailRsp unifiedPayDetail(Map<String, Object > map) throws Exception;
	
	public CancelTradeRsp cancelTrade(Map<String, Object > map) throws Exception;
	
	public String paySuccFunc(Map<String, Object > map) throws Exception;
	
	public QryPayResultRsp qryPayResult(Map<String, Object > map) throws Exception;
	
	public PreOrderForOuterRsp preOrderForOuter(Map<String, Object > map) throws Exception;
	
	public Boolean checkIdandCarinfo(Map<String, Object > map) throws Exception;
	
	public QueryOutNumInfoRsp queryOutNumInfo(Map<String, Object > map) throws Exception;
	
	public SelTempOccupyResOutRsp selTempOccupyResOut(Map<String, Object > map) throws Exception;
	
	public QueryWholeNetContractListRsp wholeNetListOut(Map<String, Object > map) throws Exception;
	
	public QueryWholeNetContractDescRsp wholeNetDescOut(Map<String, Object > map) throws Exception;
	
	public CheckWholeNetTerminalRsp chkWholeNetTerminalOut(Map<String, Object > map) throws Exception;
	
	public OrderWholeNetTradeProRsp orderWholeNetTradeOut(Map<String, Object > map) throws Exception;
	
	
}
